// 共享类型定义

// 对话状态枚举
#[derive(Debug, Clone, PartialEq)]
pub enum DialogueState {
    Initial,
    Greeting,
    InConversation,
    Questioning,
    Answering,
    Farewell,
}

// 对话意图枚举
#[derive(Debug, Clone, PartialEq)]
pub enum DialogueIntent {
    Greeting,
    Farewell,
    Question,
    Information,
    Opinion,
    Command,
    SmallTalk,
    Unknown,
}

// 用户意图枚举
#[derive(Debug, Clone, PartialEq)]
pub enum Intent {
    Greeting,
    Farewell,
    Question,
    ActionRequest,
    Opinion,
    Information,
    SmallTalk,
    Unknown,
}

// 回应策略枚举
#[derive(Debug, Clone)]
pub enum ResponseStrategy {
    Greeting,
    GreetingChinese,
    Farewell,
    FarewellChinese,
    Answer,
    AnswerChinese,
    Action,
    Opinion,
    OpinionChinese,
    General,
    GeneralChinese,
}

// 对话状态分析结构
#[derive(Debug, Clone)]
pub struct DialogueAnalysis {
    // 对话轮次
    pub turn_count: usize,
    // 当前主题
    pub current_topics: Vec<usize>,
    // 对话情感倾向
    pub sentiment: f32,
    // 用户意图
    pub intent: Intent,
    // 对话连贯性
    pub coherence: f32,
    // 对话历史摘要
    pub summary: Vec<usize>,
}